/**
 * Created by Lucifer365 on 2020-03-20
 */
const paginationBev = Behavior({
    data: {
        dataArray: [],
        total: null, // 总记录数
        noneResult: false,
        loading: false // 锁状态
    },
    methods: {
        // 加载更多
        setMoreData(dataArray) {
            const tempArray = this.data.dataArray.concat(dataArray);
            this.setData({
                dataArray: tempArray
            })
        },
        // 当前的数据长度
        getCurrentStart() {
            return this.data.dataArray.length;
        },
        setTotal(total) {
            this.setData({
                total
            })
            if(total == 0) {
                this.setData({
                    noneResult: true
                })
            }
        },
        // 是否可加载更多数据 防止重复请求数据
        hasMore() {
            if(this.getCurrentStart() >= this.data.total) {
                return false;
            } else {
                return true;
            }
        },
        initialize() {
            this.setData({
                dataArray: [],
                total: null,
                noneResult: false,
                loading: false
            })
        },
        // 私有函数锁
        isLocked() {
            return this.data.loading;
        },
        locked() {
            this.setData({loading: true});
        },
        unLocked() {
            this.setData({loading: false});
        },
    }
})

export {
    paginationBev
}